1. Field of the Invention
The present invention relates to the testing and repair of integrated circuit dies, and, more particularly, to a method and system for cumulatively storing memory fault information produced during successive iterations of a manufacturing test cycle involving a stress procedure that introduces stress factors into the die and a test routine that executes built-in self-test (BIST) algorithms, followed by an overall global self-repair procedure that is conducted using the cumulatively stored fault information.
2. Description of the Related Art
Integrated circuits have become key components of many consumer and commercial electronic products, often replacing discrete components and enhancing functionality. The semiconductor processing technologies that produce these integrated circuits have advanced to the point where complete systems, including memories, can be reduced to a single integrated circuit or application specific integrated circuit (ASIC) device. It is a common practice for the manufacturers of such integrated circuits to thoroughly test device functionality at the manufacturing site. Because of the increasing complexity of new designs, test development costs now account for a large percentage of the total ASIC development cost.
Before integrated circuits (or “chips”) are released for shipment by a manufacturer, the devices typically undergo a variety of testing procedures. In ASIC devices incorporating integrated memories, for example, specific tests are carried out to verify that each of the memory cells within the integrated memory array(s) is functioning properly. This testing is necessary because perfect yields are difficult to achieve.
It is not uncommon for a certain percentage of unpackaged ASIC die to contain memory cells which fail testing processes, due largely to non-systemic manufacturing defects and degradation faults. Such manufacturing issues are likely to increase as process geometries continue to shrink and the density of memory cells increases. Even today, up to 100 Mbits or more of dynamic random access memory (DRAM), or several megabits of static random access memory (SRAM) or flash memory, as well as mixed-signal functions can be integrated onto a single integrated circuit.
A number of ASIC memory testing strategies have evolved, many of which involve the use of an external memory tester or Automated Test Equipment (ATE). If memory is accessible from input/output (I/O) pins, either directly or by multiplexing, a hardware test mode can be utilized. In this mode, a production test system accesses the memory directly by writing to and reading from the memory bits. While this methodology does not utilize any chip area other than some simple multiplexing circuitry, it is limited to on-chip memories and other circuitry accessible via I/O pins. Another drawback of this approach is that ATE capabilities are generally not available to end users once the devices have been shipped, making it difficult to detect faults occurring after shipment.
If an embedded memory is buried deeply within an ASIC, built-in self-test (BIST) is often considered the most practical and efficient test methodology and is becoming increasingly popular with semiconductor vendors. BIST allows the memory to be tested quickly with a reasonably high degree of fault coverage, without requiring complex external test equipment and large amounts of external access circuitry. One advantage BIST has over many traditional testing methods is that with BIST, memory or logic circuitry can be tested at any time in the field. This capability offers some degree of continued fault protection.
BIST refers in general to any test technique in which test vectors are generated internally to an integrated circuit or ASIC. Test vectors are sequences of signals that are applied to integrated circuitry to determine if the integrated circuitry is performing as designed. BIST can be used to test memories located anywhere on the ASIC without requiring dedicated I/O pins, and can be used to test memory or logic circuitry every time power is applied to the ASIC, thereby allowing an ASIC to be easily tested after it has been incorporated in an end product.
A number of software tools exist for automatically generating BIST circuitry, including RAMBIST Builder by LSI Logic of Milpitas, Calif. Such software produces area-efficient BIST circuitry for testing memories, and reduces time-to-market and test development costs.
In the BIST approach, a test pattern generator and test response analyzer are incorporated directly into the device to be tested. BIST operation is controlled by supplying an external clock and utilizing a simple commencement protocol. BIST test results are typically compressed—usually to the level of “passed” or “failed”. At the end of a typical structured BIST test, or “run”, a simple pass/fail signal is asserted, indicating whether the device passed or failed the test. Intermediate pass/fail signals may also be provided, allowing individual memory locations or group of locations to be analyzed.
Unlike external testing approaches, at-speed testing with BIST is readily achieved. BIST also alleviates the need for long and convoluted test vectors and may function as a surrogate for functional testing or scan testing. Further, since the BIST structures remain active on the device, BIST can be employed at the board or system level to yield reduced system testing costs, and to reduce field diagnosis and repair costs.
In addition to the aforementioned testing procedures, manufacturers utilize a number of techniques to repair faulty memories when feasible. Such techniques include bypassing defective cells using laser procedures and fused links that cause address redirection. However, these techniques may leave integrated circuits useless if the repaired memories become defective after shipment from the manufacturing site.
In order to enhance the repair process, on-chip built-in self repair (BISR) circuitry for repairing faulty memory cells has evolved. BISR circuitry functions internal to the integrated circuit without detailed interaction with external test or repair equipment. In the BISR approach, suitable test algorithms are preferably developed and implemented in BIST or BIST-like circuitry.
These test patterns may be capable of detecting stuck-at, stuck-open, and bridging faults during memory column tests, as well as memory cell faults and retention faults during memory row tests. Following execution of the test patterns, the BISR circuitry analyzes the BIST “signature” (results) and, in the event of detected faults, automatically reconfigures the defective memory utilizing redundant memory elements to replace the defective ones. A memory incorporating BISR is therefore defect-tolerant.
BISR compliments BIST because it takes advantage of on-chip processing capabilities to re-route bad memory bits. Some BISR circuitry is capable of repairing the faulty memory locations by redirecting the original address locations of faulty memory lines to the mapped addressed locations of the redundant columns and rows. Options for repair include either row and column replacement when a bad bit is found in a particular row or column, or single bit replacement involving storing the addresses of bad bits in a Content Addressable Memory (CAM). If faults are randomly distributed, single bit replacement may prove to be more space efficient. However, if faults are detected involving large areas of memory in the forms of rows or columns, replacement of entire rows or columns is preferable.
During the testing process, it is often desirable to separate so-called “prime die” (integrated circuit die in which no redundant BISR memory components were utilized during initial testing) from “repaired die”. Separating integrated circuit die in this manner provides an indication of quality and fault tolerance. Because the BIST and BISR circuitry of an integrated circuit continue to be functional in the field, any BISR redundancy resources not expended during initial testing are available to repair faults that may occur in the field. As a consequence, prime die have a higher degree of fault tolerance, and can often be sold by manufacturers for a premium.
A key feature of any integrated circuit is its reliability. Engineers strive to design integrated circuits that operate under a range of conditions (including temperatures and voltages) without malfunctioning. Therefore, it is often desirable to test dies (or “dice”) under realistic field conditions during the manufacturing production cycle to ensure operability. This testing is done prior to singulation of the dies from a wafer. Furthermore, instead of using costly external test patterns to test memory locations, it is desirable to use the BIST circuitry with external ATE. The external tester is programmed to “test” a die's embedded memory by examining the outputs of the its BIST circuitry.
With stand-alone memory devices, manufacturers use dedicated memory ATEs to test them over a range of conditions. Typically, a worst set of operating conditions is applied and any detected faults, if possible, are repaired using fuse structures. This approach may not work for integrated circuits incorporating embedded memories and BIST/BISR capabilities, as test and repair routines are generally executed only at power-up.
Running current BIST algorithms may not adequately detect memory locations having faults that are dependent on operating conditions. Even with BIST/BISR, memory elements can pass power-up BIST under one set of conditions, only to fail during normal operation when the die is subsequently subjected to another set of conditions. Since BIST/BISR is typically run only once during a power cycle, any memory locations that fail after power-up may not be repaired. Such failures may cause the chip to be unsuitable for its intended use.
Prior methods fail to introduce realistic field conditions or stress factors (e.g., normal variation in voltage, timing, power supply disturbances and temperature) during these tests to insure adequate fault coverage. Consequently, suspect memory locations that pass under an initial set of operating conditions but fail under a subsequent set of operating conditions may not be identified by current production test programs. Further, since BISR structures have a limited number of redundant memory locations, a device may be repairable only under select operating conditions.
Current repair approaches involves comparing the repair solutions obtained under different condition either internally to the chip or externally by storing individual repair solutions. Internal comparison is undesirable since it increases the silicon area required to implement the comparison hardware. External comparison is likewise unattractive due to the difficulty of storing and readily accessing different repair solutions externally.
Both comparison methods lead to some loss of yield because of mismatches between the repair solutions. Moreover, an internal comparison is inefficient because it involves a first BIST run to identify the defect, then followed by a second BIST run to verify the repair solution made by the remap operation. All of these steps are associated with only a single operating condition. Obtaining defect data under different conditions would therefore require that this dual-BIST/BISR sequence be repeated. The external comparison requires a BISR run for each of the conditions.